.dialog{
	display:block;
	position:fixed;
	background-color:var(--vscode-menu-background);
	color:var(--vscode-menu-foreground);
	left:50%;
	transform:translateX(-50%);
	border:1px solid rgba(128,128,128,0.5);
	border-radius:5px;
	text-align:center;
	font-size:13px;
	line-height:17px;
	z-index:41;
	box-shadow:0 0 30px 5px var(--vscode-widget-shadow);
}
body.vscode-high-contrast .dialog{
	border-color:var(--vscode-menu-border, rgba(128,128,128,0.5));
}

.dialogContent{
	display:block;
	overflow-y:auto;
	padding:10px;
	max-width:360px;
}

.dialogContent > table.dialogForm{
	display:inline-table;
	width:360px;
}

.dialogContent > table.dialogForm td{
	padding-top:8px;
	text-align:left;
	white-space:nowrap;
	-webkit-user-select:none;
	user-select:none;
}

.dialogContent > table.dialogForm tr.mediumField td{
	line-height:22px;
}
.dialogContent > table.dialogForm tr.largeField td{
	line-height:27px;
}

.dialogContent > table.dialogForm td.inputCol{
	width:100%;
}

.dialogContent > table.dialogForm.multi td:nth-child(1){
	padding-right:5px;
}

.dialogContent > table.dialogForm.single .dialogFormCheckbox, .dialogContent > table.dialogForm.single .dialogFormRadio{
	display:inline-block;
	width:100%;
}
.dialogContent > table.dialogForm.single .dialogFormCheckbox{
	text-align:center;
}
.dialogContent > table.dialogForm.single .dialogFormRadio{
	text-align:left;
}

.dialogContent .dialogFormCheckbox > label, .dialogContent .dialogFormRadio > label{
	-webkit-user-select:none;
	user-select:none;
	cursor:pointer;
}

.dialogContent > table.dialogForm.single .customCheckbox, .dialogContent > table.dialogForm.multiCheckbox .customCheckbox{
	margin-right:6px;
}
.dialogContent > table.dialogForm .customRadio{
	margin-left:1px;
	margin-right:7px;
}
.dialogContent .dialogFormCheckbox > label > input[type=checkbox]:checked ~ .customCheckbox:after{
	border-color:var(--vscode-menu-foreground);
}
.dialogContent .dialogFormRadio > label > input[type=radio]:checked ~ .customRadio:after{
	background-color:var(--vscode-menu-foreground);
}

.dialogContent > table.dialogForm input[type=text]{
	width:100%;
	padding:4px 6px;
	box-sizing:border-box;
	outline-style:none;
	background-color:rgba(128,128,128,0.1);
	border:1px solid rgba(128,128,128,0.5);
	border-radius:4px;
	color:var(--vscode-menu-foreground);
	font-family:var(--vscode-font-family);
	font-size:13px;
	line-height:17px;
}
.dialogContent > table.dialogForm input[type=text]:focus, .dialogContent .dialogFormCheckbox > label > input[type=checkbox]:focus ~ .customCheckbox, .dialogContent .dialogFormRadio > label > input[type=radio]:focus ~ .customRadio{
	border-color:var(--vscode-focusBorder);
}
.dialogContent > table.dialogForm input[type=text]::placeholder{
	color:var(--vscode-menu-foreground);
	opacity:0.4;
}

.dialog .roundedBtn{
	display:inline-block;
	line-height:22px;
	padding:0 15px;
	margin:10px 6px 0 6px;
	border-radius:11px;
}

.dialog .messageContent{
	display:inline-block;
	margin-top:10px;
	text-align:left;
	width:100%;
	word-wrap:break-word;
}

.dialog .errorContent{
	font-style:italic;
}

.dialog #dialogAction{
	background-color:rgba(128,128,128,0.15);
	border-color:rgba(128,128,128,0.8);
	box-shadow:0 0 1px 1px rgba(128,128,128,0.2);
}

.dialog #dialogAction:hover{
	background-color:rgba(128,128,128,0.25);
}

.dialog.noInput #dialogAction, .dialog.inputInvalid #dialogAction{
	background-color:rgba(128,128,128,0.2);
	opacity:0.5;
}

.dialog.noInput #dialogAction{
	cursor:default;
}

.dialog.inputInvalid #dialogAction{
	cursor:help;
}

.dialog svg{
	display:inline;
	fill:var(--vscode-menu-foreground);
	opacity:0.75;
	vertical-align:sub;
}

.dialog .dialogAlert svg, .dialog .actionRunning svg{
	margin-right:8px;
}

.dialog .dialogInfo{
	cursor:help;
}
.dialog .dialogInfo svg{
	width:15px !important;
	height:15px !important;
	margin-left:5px;
	margin-top:-2px;
	vertical-align:middle;
}

.dialog .actionRunning{
	margin:0 16px;
	line-height:24px;
}

.dialog .actionRunning svg{
	display:inline-block;
	width:15px !important;
	height:20px !important;
	margin-top:2px;
	vertical-align:top;
	animation:loadingIconAnimation 2s linear infinite;
}

.dialogContextMenu{
	z-index:43;
}


/* Custom Select Input */

.customSelectContainer{
	display:inline-block;
	position:relative;
	width:100%;
	height:27px;
	vertical-align:middle;
}

.customSelectCurrent{
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	padding:4px 22px 4px 6px;
	box-sizing:border-box;
	background-color:rgba(128,128,128,0.1);
	border:1px solid rgba(128,128,128,0.5);
	border-radius:4px;
	outline-style:none;
	color:var(--vscode-menu-foreground);
	line-height:17px;
	text-overflow:ellipsis;
	white-space:nowrap;
	overflow:hidden;
	-webkit-user-select:none;
	user-select:none;
	cursor:pointer;
}

.customSelectCurrent:after{
	position:absolute;
	content:"";
	top:11px;
	right:7px;
	width:0;
	height:0;
	border:4px solid transparent;
	border-color:var(--vscode-menu-foreground) transparent transparent transparent;
}

.customSelectCurrent:focus, .customSelectContainer.open .customSelectCurrent{
	border-color:var(--vscode-focusBorder);
}
.customSelectContainer.open .customSelectCurrent{
	border-radius:4px 4px 0 0;
}
.customSelectContainer.open .customSelectCurrent:after{
	border-color:transparent transparent var(--vscode-menu-foreground) transparent;
	top:6px;
}

.customSelectOptions{
	display:block;
	position:absolute;
	box-sizing:border-box;
	background-color:var(--vscode-menu-background);
	color:var(--vscode-menu-foreground);
	border:1px solid var(--vscode-focusBorder);
	border-radius:0 0 4px 4px;
	z-index:42;
	text-align:left;
	overflow-y:auto;
}

.customSelectOption{
	position:relative;
	box-sizing:border-box;
	width:100%;
	padding:5px 6px;
	max-height:61px;
	background-color:rgba(128,128,128,0.05);
	overflow:hidden;
	word-wrap:break-word;
	-webkit-user-select:none;
	user-select:none;
	cursor:pointer;
}

.customSelectOptions > .customSelectOption.selected{
	background-color:rgba(128,128,128,0.2);
}
.customSelectOptions > .customSelectOption.focussed{
	background-color:var(--vscode-menu-selectionBackground, rgba(128,128,128,0.05));
	color:var(--vscode-menu-selectionForeground, var(--vscode-menu-foreground));
}
body.vscode-high-contrast .customSelectOptions > .customSelectOption.focussed{
	outline:1px dotted var(--vscode-menu-selectionBorder, transparent);
	outline-offset:-2px;
}

.customSelectOptions.multiple > .customSelectOption{
	padding-left:28px;
}
.customSelectOptions.multiple > .customSelectOption > .selectedIcon{
	display:none;
}
.customSelectOptions.multiple > .customSelectOption.selected > .selectedIcon{
	display:block;
	position:absolute;
	width:12px;
	height:16px;
	top:50%;
	left:9px;
	margin-top:-9px;
}
.customSelectOptions.multiple > .customSelectOption > .selectedIcon svg{
	fill:var(--vscode-menu-foreground);
	opacity:0.7;
}
.customSelectOptions.multiple > .customSelectOption.focussed > .selectedIcon svg{
	fill:var(--vscode-menu-selectionForeground, var(--vscode-menu-foreground));
	opacity:0.85;
}
